import createElement from './createElement'
import updateChildren from './updateChildren'
export default function patchVnode (oldVnode, newVnode) {
    // console.log(oldVnode) 
    // 判断新节点有没有子元素
    if (newVnode.children === undefined) { // 没有子元素
        if (newVnode.text !== oldVnode.text) {
            oldVnode.elm.innerText = newVnode.text
        }
    } else { // 有子元素
        // 判断旧节点有没有子元素
        if (oldVnode.children && oldVnode.children.length > 0) { // 旧节点有子元素，情况较为复杂
            updateChildren(oldVnode.elm, oldVnode.children, newVnode.children)
            // console.log(oldVnode.elm, oldVnode.children, newVnode.children)
        } else { // 旧节点没有子元素
            oldVnode.elm.innerHTML = '' // 删掉旧节点的内容
            for (let child of newVnode.children) {
                let childDom = createElement(child)
                oldVnode.elm.appendChild(childDom)
            }
            // console.log(oldVnode.elm)
        }
    }
}